#include <stdio.h>

int main()
{
    int a = 1, b = 0;

    b = a++;                 // 先赋值，再自加
    printf("b = %d, a = %d\n", b, a);   // b = 1, a = 2;
    printf("a = %d\n", a++);    // 2 ， 先赋值打印，再自加
    printf("b = %d, a = %d\n", (b ? b++ : a++), a);    // b = 1, a = 3;
    printf("b = %d, a = %d\n", (b ? b++ : a++), a);    // b = 2, a = 3;
    printf("b = %d\n", b);     // b = 3
    printf("%d\n", b++);       // 3
    printf("%d %d\n", b++, ++b);  // 5, 6   因后面有++b编译器先算出b++的值

    printf("%d\n", b++);       // 6
    printf("%d\n", ++b);       // 8

    b ? (b = 7) : (a = 8);
    printf("b = %d, a = %d\n", b, a);    // b = 7, a = 3;

    return 0;
}
